package cn.signalpha.modules.base.entity;

import cn.signalpha.common.enums.StatusEnum;
import cn.signalpha.core.swagger.ApiModelPropertyEnum;
import cn.signalpha.modules.base.entity.enums.WxReplyTypeEnum;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

/**
 * 实体类
 *
 * @author signalpha
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("base_wx_reply_rule")
@ApiModel(value = "WxReplyRule对象", description = "微信消息回复")
public class WxReplyRule implements Serializable {
    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private Long id;

    @ApiModelProperty(value = "类型：1关注 2消息 3关键字")
    private Integer type;

    @ApiModelProperty(value = "规则名")
    private String name;

    @ApiModelProperty(value = "匹配规则：1完全 2模糊")
    private Integer matchType;

    @ApiModelProperty(value = "匹配内容")
    private String matchValue;

    @ApiModelProperty(value = "回复类型")
	@ApiModelPropertyEnum(WxReplyTypeEnum.class)
    private String replyType;

    @ApiModelProperty(value = "回复内容")
    private String replyValue;

    @ApiModelProperty(value = "状态")
	@ApiModelPropertyEnum(StatusEnum.class)
    private Integer status;

    @ApiModelProperty(value = "排序值")
    private Integer sort;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

}
